1. Field of Invention
This application relates generally to handheld computer-related devices that can be adapted to act as image scanners and more specifically to forming composite images from image frames generated by such handheld computer-related devices.
2. Related Art
Image scanners are frequently used in business and even home settings. A scanner can acquire, in digital form, an image of an object. Generally, the scanned object is flat, such as a document or a photograph. Once scanned, the image can be manipulated (e.g., rotated, cropped and color balanced), processed (e.g., copied to be pasted elsewhere) and further handled such as attached to an e-mail, sent over a telephone line as a fax or printed as a copy.
A scanner includes an image array, but the image array is generally smaller than the object to be scanned. The scanner can nonetheless acquire an image of the entire object because there is relative motion of the image array and the object during scanning. During this time of relative motion, the output of the image array represents different portions of the object at different times. As the scanner moves relative to the object, successive outputs of the image array are captured and then assembled into an image representing the entire item.
In some scanners, such as a flatbed scanner, the object to be scanned is held in a fixed position. The scanner is constructed such that the image array is mechanically constrained to move only along a predefined path relative to that fixed position. As a result, information about the relative position of the object and the image array can be used to position the successive outputs of the image array within an image such that the image accurately represents the object being scanned.
Other scanners are handheld such that mechanical constraints on the movement of the image array relative to the object to be scanned may be reduced. However, application of handheld scanners may still be limited by some constraints. For example, some handheld scanners may be constrained to move in only one or two directions when pressed against a surface containing an object to be scanned. As in a flatbed scanner, successive outputs of the image array are captured and assembled into an image. Though, without mechanical constraints imposed on relative motion of the image array and the object being scanned, accurately assembling successive outputs of the image array into an image is more complicated.
In some instances, handheld scanners are intended to only be effective on relatively small items, such as business cards, so that there are a relatively small number of outputs to be assembled into the image. In other instances, use of a handheld scanner is cumbersome, requiring a user to move the scanner in a predetermined pattern. For example, a user may be instructed to move the scanner across the object so that the output of the image array represents parallel strips of the object that can be relatively easily assembled into a composite image. In other cases, the output of handheld scanner is simply accepted as imperfect, appearing fuzzy or distorted as a result of the successive outputs of the image array being inaccurately assembled into an image.
Image processing techniques that can assemble successive outputs of a two-dimensional image array into a composite image are known in other contexts. These techniques are referred to generally as “image stitching.” However, such image stitching techniques have not generally been applied in connection with handheld scanners. Image stitching techniques developed, for example, for processing cinematographic images or digital photographs may be too slow or require too much computing power to be practically applied to developing a composite image from a handheld scanner.